# Dual Geodesic Icosahedron Pattern 10 [5,0],
import numpy as np

C0  = 0.0578400645049409946250497278797
C1  = 0.0696372543360808869432830696859
C2  = 0.0728157495350743052968501628216
C3  = 0.09358719028048088962993201400947
C4  = 0.120030978954810626083800862826
C5  = 0.124964774212446739923350926257
C6  = 0.125878890869111808576938096953
C7  = 0.1266185365839151810425725563148
C8  = 0.130510836908625003929132676308
C9  = 0.143690690054777434070173378661
C10 = 0.211170970018349510936617149812
C11 = 0.232706423353810494144957880931
C12 = 0.246263016487069218796012351942
C13 = 0.250107815542922634342143540524
C14 = 0.250843665081558548500289023210
C15 = 0.263851457987887808793597873287
C16 = 0.285654504833584083279093535597
C17 = 0.306889648050806789911471821707
C18 = 0.345887942126972632294914907502
C19 = 0.357461194588003118231360288984
C20 = 0.357789251384992568657302875081
C21 = 0.361023311452748338048741089296
C22 = 0.366293995441879844879813214768
C23 = 0.367926173206972213862443293841
C24 = 0.434693672447751576532750891569
C25 = 0.456342159484666606329343601130
C26 = 0.462198697860260172142532782720
C27 = 0.477498695935512362888275204752
C28 = 0.478969439840879712940970232873
C29 = 0.483340085457114926808298385937
C30 = 0.4905276006321308485866312061753
C31 = 0.522501304064487637111724795248
C32 = 0.549564266019334329705005012728
C33 = 0.549929349765147495959275615139
C34 = 0.572194281471097848985358239108
C35 = 0.578915169550298365571521338357
C36 = 0.5888172344441753531851053390346
C37 = 0.607769414270088490584325343019
C38 = 0.6383699963401132739428409967947
C39 = 0.662313388836041534681128734356
C40 = 0.667071793658806937450070453298
C41 = 0.673183643492686634791285036474
C42 = 0.685537337529310125033039914778
C43 = 0.702705118379722852914490915417
C44 = 0.705351578898960515799002682776
C45 = 0.714658825570210992242685349967
C46 = 0.742820897828767521734568106160
C47 = 0.763334770552560013866191923052
C48 = 0.772609119607410271453868335772
C49 = 0.795318958679935499250169823471
C50 = 0.796217189050656762930651017118
C51 = 0.825382557853771141882803545601
C52 = 0.829228027584087559103213293439
C53 = 0.831964314826196657935533303248
C54 = 0.845424869142484576750718498594
C55 = 0.874471739277759436464198874632
C56 = 0.889804379331137652560583031128
C57 = 0.895019812189852028826086615287
C58 = 0.907025460607337447936365301712
C59 = 0.925829795588560503179302499779
C60 = 0.936704420935290934228824213438
C61 = 0.9527262984923910207291639888951
C62 = 0.969203036886848324592600556063
C63 = 0.984257938467085906237755904296


sphere_vertices = np.array([
	[ 0.0,   C2,  1.0],
	[ 0.0,   C2, -1.0],
	[ 0.0,  -C2,  1.0],
	[ 0.0,  -C2, -1.0],
	[ 1.0,  0.0,   C2],
	[ 1.0,  0.0,  -C2],
	[-1.0,  0.0,   C2],
	[-1.0,  0.0,  -C2],
	[  C2,  1.0,  0.0],
	[  C2, -1.0,  0.0],
	[ -C2,  1.0,  0.0],
	[ -C2, -1.0,  0.0],
	[  C6,   C9,  C63],
	[  C6,   C9, -C63],
	[  C6,  -C9,  C63],
	[  C6,  -C9, -C63],
	[ -C6,   C9,  C63],
	[ -C6,   C9, -C63],
	[ -C6,  -C9,  C63],
	[ -C6,  -C9, -C63],
	[ C63,   C6,   C9],
	[ C63,   C6,  -C9],
	[ C63,  -C6,   C9],
	[ C63,  -C6,  -C9],
	[-C63,   C6,   C9],
	[-C63,   C6,  -C9],
	[-C63,  -C6,   C9],
	[-C63,  -C6,  -C9],
	[  C9,  C63,   C6],
	[  C9,  C63,  -C6],
	[  C9, -C63,   C6],
	[  C9, -C63,  -C6],
	[ -C9,  C63,   C6],
	[ -C9,  C63,  -C6],
	[ -C9, -C63,   C6],
	[ -C9, -C63,  -C6],
	[ C12,   C1,  C62],
	[ C12,   C1, -C62],
	[ C12,  -C1,  C62],
	[ C12,  -C1, -C62],
	[-C12,   C1,  C62],
	[-C12,   C1, -C62],
	[-C12,  -C1,  C62],
	[-C12,  -C1, -C62],
	[ C62,  C12,   C1],
	[ C62,  C12,  -C1],
	[ C62, -C12,   C1],
	[ C62, -C12,  -C1],
	[-C62,  C12,   C1],
	[-C62,  C12,  -C1],
	[-C62, -C12,   C1],
	[-C62, -C12,  -C1],
	[  C1,  C62,  C12],
	[  C1,  C62, -C12],
	[  C1, -C62,  C12],
	[  C1, -C62, -C12],
	[ -C1,  C62,  C12],
	[ -C1,  C62, -C12],
	[ -C1, -C62,  C12],
	[ -C1, -C62, -C12],
	[  C7,  C16,  C61],
	[  C7,  C16, -C61],
	[  C7, -C16,  C61],
	[  C7, -C16, -C61],
	[ -C7,  C16,  C61],
	[ -C7,  C16, -C61],
	[ -C7, -C16,  C61],
	[ -C7, -C16, -C61],
	[ C61,   C7,  C16],
	[ C61,   C7, -C16],
	[ C61,  -C7,  C16],
	[ C61,  -C7, -C16],
	[-C61,   C7,  C16],
	[-C61,   C7, -C16],
	[-C61,  -C7,  C16],
	[-C61,  -C7, -C16],
	[ C16,  C61,   C7],
	[ C16,  C61,  -C7],
	[ C16, -C61,   C7],
	[ C16, -C61,  -C7],
	[-C16,  C61,   C7],
	[-C16,  C61,  -C7],
	[-C16, -C61,   C7],
	[-C16, -C61,  -C7],
	[ 0.0,  C20,  C60],
	[ 0.0,  C20, -C60],
	[ 0.0, -C20,  C60],
	[ 0.0, -C20, -C60],
	[ C60,  0.0,  C20],
	[ C60,  0.0, -C20],
	[-C60,  0.0,  C20],
	[-C60,  0.0, -C20],
	[ C20,  C60,  0.0],
	[ C20, -C60,  0.0],
	[-C20,  C60,  0.0],
	[-C20, -C60,  0.0],
	[ C21,   C8,  C59],
	[ C21,   C8, -C59],
	[ C21,  -C8,  C59],
	[ C21,  -C8, -C59],
	[-C21,   C8,  C59],
	[-C21,   C8, -C59],
	[-C21,  -C8,  C59],
	[-C21,  -C8, -C59],
	[ C59,  C21,   C8],
	[ C59,  C21,  -C8],
	[ C59, -C21,   C8],
	[ C59, -C21,  -C8],
	[-C59,  C21,   C8],
	[-C59,  C21,  -C8],
	[-C59, -C21,   C8],
	[-C59, -C21,  -C8],
	[  C8,  C59,  C21],
	[  C8,  C59, -C21],
	[  C8, -C59,  C21],
	[  C8, -C59, -C21],
	[ -C8,  C59,  C21],
	[ -C8,  C59, -C21],
	[ -C8, -C59,  C21],
	[ -C8, -C59, -C21],
	[ C14,  C18,  C58],
	[ C14,  C18, -C58],
	[ C14, -C18,  C58],
	[ C14, -C18, -C58],
	[-C14,  C18,  C58],
	[-C14,  C18, -C58],
	[-C14, -C18,  C58],
	[-C14, -C18, -C58],
	[ C58,  C14,  C18],
	[ C58,  C14, -C18],
	[ C58, -C14,  C18],
	[ C58, -C14, -C18],
	[-C58,  C14,  C18],
	[-C58,  C14, -C18],
	[-C58, -C14,  C18],
	[-C58, -C14, -C18],
	[ C18,  C58,  C14],
	[ C18,  C58, -C14],
	[ C18, -C58,  C14],
	[ C18, -C58, -C14],
	[-C18,  C58,  C14],
	[-C18,  C58, -C14],
	[-C18, -C58,  C14],
	[-C18, -C58, -C14],
	[ C22,  C15,  C57],
	[ C22,  C15, -C57],
	[ C22, -C15,  C57],
	[ C22, -C15, -C57],
	[-C22,  C15,  C57],
	[-C22,  C15, -C57],
	[-C22, -C15,  C57],
	[-C22, -C15, -C57],
	[ C57,  C22,  C15],
	[ C57,  C22, -C15],
	[ C57, -C22,  C15],
	[ C57, -C22, -C15],
	[-C57,  C22,  C15],
	[-C57,  C22, -C15],
	[-C57, -C22,  C15],
	[-C57, -C22, -C15],
	[ C15,  C57,  C22],
	[ C15,  C57, -C22],
	[ C15, -C57,  C22],
	[ C15, -C57, -C22],
	[-C15,  C57,  C22],
	[-C15,  C57, -C22],
	[-C15, -C57,  C22],
	[-C15, -C57, -C22],
	[ C25,   C0,  C56],
	[ C25,   C0, -C56],
	[ C25,  -C0,  C56],
	[ C25,  -C0, -C56],
	[-C25,   C0,  C56],
	[-C25,   C0, -C56],
	[-C25,  -C0,  C56],
	[-C25,  -C0, -C56],
	[ C56,  C25,   C0],
	[ C56,  C25,  -C0],
	[ C56, -C25,   C0],
	[ C56, -C25,  -C0],
	[-C56,  C25,   C0],
	[-C56,  C25,  -C0],
	[-C56, -C25,   C0],
	[-C56, -C25,  -C0],
	[  C0,  C56,  C25],
	[  C0,  C56, -C25],
	[  C0, -C56,  C25],
	[  C0, -C56, -C25],
	[ -C0,  C56,  C25],
	[ -C0,  C56, -C25],
	[ -C0, -C56,  C25],
	[ -C0, -C56, -C25],
	[ 0.0,  C30,  C55],
	[ 0.0,  C30, -C55],
	[ 0.0, -C30,  C55],
	[ 0.0, -C30, -C55],
	[ C55,  0.0,  C30],
	[ C55,  0.0, -C30],
	[-C55,  0.0,  C30],
	[-C55,  0.0, -C30],
	[ C30,  C55,  0.0],
	[ C30, -C55,  0.0],
	[-C30,  C55,  0.0],
	[-C30, -C55,  0.0],
	[ C13,  C27,  C54],
	[ C13,  C27, -C54],
	[ C13, -C27,  C54],
	[ C13, -C27, -C54],
	[-C13,  C27,  C54],
	[-C13,  C27, -C54],
	[-C13, -C27,  C54],
	[-C13, -C27, -C54],
	[ C54,  C13,  C27],
	[ C54,  C13, -C27],
	[ C54, -C13,  C27],
	[ C54, -C13, -C27],
	[-C54,  C13,  C27],
	[-C54,  C13, -C27],
	[-C54, -C13,  C27],
	[-C54, -C13, -C27],
	[ C27,  C54,  C13],
	[ C27,  C54, -C13],
	[ C27, -C54,  C13],
	[ C27, -C54, -C13],
	[-C27,  C54,  C13],
	[-C27,  C54, -C13],
	[-C27, -C54,  C13],
	[-C27, -C54, -C13],
	[ C33,   C3,  C53],
	[ C33,   C3, -C53],
	[ C33,  -C3,  C53],
	[ C33,  -C3, -C53],
	[-C33,   C3,  C53],
	[-C33,   C3, -C53],
	[-C33,  -C3,  C53],
	[-C33,  -C3, -C53],
	[ C53,  C33,   C3],
	[ C53,  C33,  -C3],
	[ C53, -C33,   C3],
	[ C53, -C33,  -C3],
	[-C53,  C33,   C3],
	[-C53,  C33,  -C3],
	[-C53, -C33,   C3],
	[-C53, -C33,  -C3],
	[  C3,  C53,  C33],
	[  C3,  C53, -C33],
	[  C3, -C53,  C33],
	[  C3, -C53, -C33],
	[ -C3,  C53,  C33],
	[ -C3,  C53, -C33],
	[ -C3, -C53,  C33],
	[ -C3, -C53, -C33],
	[  C5,  C32,  C52],
	[  C5,  C32, -C52],
	[  C5, -C32,  C52],
	[  C5, -C32, -C52],
	[ -C5,  C32,  C52],
	[ -C5,  C32, -C52],
	[ -C5, -C32,  C52],
	[ -C5, -C32, -C52],
	[ C52,   C5,  C32],
	[ C52,   C5, -C32],
	[ C52,  -C5,  C32],
	[ C52,  -C5, -C32],
	[-C52,   C5,  C32],
	[-C52,   C5, -C32],
	[-C52,  -C5,  C32],
	[-C52,  -C5, -C32],
	[ C32,  C52,   C5],
	[ C32,  C52,  -C5],
	[ C32, -C52,   C5],
	[ C32, -C52,  -C5],
	[-C32,  C52,   C5],
	[-C32,  C52,  -C5],
	[-C32, -C52,   C5],
	[-C32, -C52,  -C5],
	[ C28,  C17,  C51],
	[ C28,  C17, -C51],
	[ C28, -C17,  C51],
	[ C28, -C17, -C51],
	[-C28,  C17,  C51],
	[-C28,  C17, -C51],
	[-C28, -C17,  C51],
	[-C28, -C17, -C51],
	[ C51,  C28,  C17],
	[ C51,  C28, -C17],
	[ C51, -C28,  C17],
	[ C51, -C28, -C17],
	[-C51,  C28,  C17],
	[-C51,  C28, -C17],
	[-C51, -C28,  C17],
	[-C51, -C28, -C17],
	[ C17,  C51,  C28],
	[ C17,  C51, -C28],
	[ C17, -C51,  C28],
	[ C17, -C51, -C28],
	[-C17,  C51,  C28],
	[-C17,  C51, -C28],
	[-C17, -C51,  C28],
	[-C17, -C51, -C28],
	[ C37,  0.0,  C50],
	[ C37,  0.0, -C50],
	[-C37,  0.0,  C50],
	[-C37,  0.0, -C50],
	[ C50,  C37,  0.0],
	[ C50, -C37,  0.0],
	[-C50,  C37,  0.0],
	[-C50, -C37,  0.0],
	[ 0.0,  C50,  C37],
	[ 0.0,  C50, -C37],
	[ 0.0, -C50,  C37],
	[ 0.0, -C50, -C37],
	[ C34,  C10,  C49],
	[ C34,  C10, -C49],
	[ C34, -C10,  C49],
	[ C34, -C10, -C49],
	[-C34,  C10,  C49],
	[-C34,  C10, -C49],
	[-C34, -C10,  C49],
	[-C34, -C10, -C49],
	[ C49,  C34,  C10],
	[ C49,  C34, -C10],
	[ C49, -C34,  C10],
	[ C49, -C34, -C10],
	[-C49,  C34,  C10],
	[-C49,  C34, -C10],
	[-C49, -C34,  C10],
	[-C49, -C34, -C10],
	[ C10,  C49,  C34],
	[ C10,  C49, -C34],
	[ C10, -C49,  C34],
	[ C10, -C49, -C34],
	[-C10,  C49,  C34],
	[-C10,  C49, -C34],
	[-C10, -C49,  C34],
	[-C10, -C49, -C34],
	[ C23,  C31,  C48],
	[ C23,  C31, -C48],
	[ C23, -C31,  C48],
	[ C23, -C31, -C48],
	[-C23,  C31,  C48],
	[-C23,  C31, -C48],
	[-C23, -C31,  C48],
	[-C23, -C31, -C48],
	[ C48,  C23,  C31],
	[ C48,  C23, -C31],
	[ C48, -C23,  C31],
	[ C48, -C23, -C31],
	[-C48,  C23,  C31],
	[-C48,  C23, -C31],
	[-C48, -C23,  C31],
	[-C48, -C23, -C31],
	[ C31,  C48,  C23],
	[ C31,  C48, -C23],
	[ C31, -C48,  C23],
	[ C31, -C48, -C23],
	[-C31,  C48,  C23],
	[-C31,  C48, -C23],
	[-C31, -C48,  C23],
	[-C31, -C48, -C23],
	[ C29,  C24,  C47],
	[ C29,  C24, -C47],
	[ C29, -C24,  C47],
	[ C29, -C24, -C47],
	[-C29,  C24,  C47],
	[-C29,  C24, -C47],
	[-C29, -C24,  C47],
	[-C29, -C24, -C47],
	[ C47,  C29,  C24],
	[ C47,  C29, -C24],
	[ C47, -C29,  C24],
	[ C47, -C29, -C24],
	[-C47,  C29,  C24],
	[-C47,  C29, -C24],
	[-C47, -C29,  C24],
	[-C47, -C29, -C24],
	[ C24,  C47,  C29],
	[ C24,  C47, -C29],
	[ C24, -C47,  C29],
	[ C24, -C47, -C29],
	[-C24,  C47,  C29],
	[-C24,  C47, -C29],
	[-C24, -C47,  C29],
	[-C24, -C47, -C29],
	[  C4,  C39,  C46],
	[  C4,  C39, -C46],
	[  C4, -C39,  C46],
	[  C4, -C39, -C46],
	[ -C4,  C39,  C46],
	[ -C4,  C39, -C46],
	[ -C4, -C39,  C46],
	[ -C4, -C39, -C46],
	[ C46,   C4,  C39],
	[ C46,   C4, -C39],
	[ C46,  -C4,  C39],
	[ C46,  -C4, -C39],
	[-C46,   C4,  C39],
	[-C46,   C4, -C39],
	[-C46,  -C4,  C39],
	[-C46,  -C4, -C39],
	[ C39,  C46,   C4],
	[ C39,  C46,  -C4],
	[ C39, -C46,   C4],
	[ C39, -C46,  -C4],
	[-C39,  C46,   C4],
	[-C39,  C46,  -C4],
	[-C39, -C46,   C4],
	[-C39, -C46,  -C4],
	[ C43,  0.0,  C45],
	[ C43,  0.0, -C45],
	[-C43,  0.0,  C45],
	[-C43,  0.0, -C45],
	[ C45,  C43,  0.0],
	[ C45, -C43,  0.0],
	[-C45,  C43,  0.0],
	[-C45, -C43,  0.0],
	[ 0.0,  C45,  C43],
	[ 0.0,  C45, -C43],
	[ 0.0, -C45,  C43],
	[ 0.0, -C45, -C43],
	[ C41,  C11,  C44],
	[ C41,  C11, -C44],
	[ C41, -C11,  C44],
	[ C41, -C11, -C44],
	[-C41,  C11,  C44],
	[-C41,  C11, -C44],
	[-C41, -C11,  C44],
	[-C41, -C11, -C44],
	[ C44,  C41,  C11],
	[ C44,  C41, -C11],
	[ C44, -C41,  C11],
	[ C44, -C41, -C11],
	[-C44,  C41,  C11],
	[-C44,  C41, -C11],
	[-C44, -C41,  C11],
	[-C44, -C41, -C11],
	[ C11,  C44,  C41],
	[ C11,  C44, -C41],
	[ C11, -C44,  C41],
	[ C11, -C44, -C41],
	[-C11,  C44,  C41],
	[-C11,  C44, -C41],
	[-C11, -C44,  C41],
	[-C11, -C44, -C41],
	[ C19,  C38,  C42],
	[ C19,  C38, -C42],
	[ C19, -C38,  C42],
	[ C19, -C38, -C42],
	[-C19,  C38,  C42],
	[-C19,  C38, -C42],
	[-C19, -C38,  C42],
	[-C19, -C38, -C42],
	[ C42,  C19,  C38],
	[ C42,  C19, -C38],
	[ C42, -C19,  C38],
	[ C42, -C19, -C38],
	[-C42,  C19,  C38],
	[-C42,  C19, -C38],
	[-C42, -C19,  C38],
	[-C42, -C19, -C38],
	[ C38,  C42,  C19],
	[ C38,  C42, -C19],
	[ C38, -C42,  C19],
	[ C38, -C42, -C19],
	[-C38,  C42,  C19],
	[-C38,  C42, -C19],
	[-C38, -C42,  C19],
	[-C38, -C42, -C19],
	[ C36,  C26,  C40],
	[ C36,  C26, -C40],
	[ C36, -C26,  C40],
	[ C36, -C26, -C40],
	[-C36,  C26,  C40],
	[-C36,  C26, -C40],
	[-C36, -C26,  C40],
	[-C36, -C26, -C40],
	[ C40,  C36,  C26],
	[ C40,  C36, -C26],
	[ C40, -C36,  C26],
	[ C40, -C36, -C26],
	[-C40,  C36,  C26],
	[-C40,  C36, -C26],
	[-C40, -C36,  C26],
	[-C40, -C36, -C26],
	[ C26,  C40,  C36],
	[ C26,  C40, -C36],
	[ C26, -C40,  C36],
	[ C26, -C40, -C36],
	[-C26,  C40,  C36],
	[-C26,  C40, -C36],
	[-C26, -C40,  C36],
	[-C26, -C40, -C36],
	[ C35,  C35,  C35],
	[ C35,  C35, -C35],
	[ C35, -C35,  C35],
	[ C35, -C35, -C35],
	[-C35,  C35,  C35],
	[-C35,  C35, -C35],
	[-C35, -C35,  C35],
	[-C35, -C35, -C35]
])

sphere_faces = np.array([
	[ 300, 228, 168, 170, 230 ],
	[ 301, 231, 171, 169, 229 ],
	[ 302, 234, 174, 172, 232 ],
	[ 303, 233, 173, 175, 235 ],
	[ 304, 236, 176, 177, 237 ],
	[ 305, 239, 179, 178, 238 ],
	[ 306, 241, 181, 180, 240 ],
	[ 307, 242, 182, 183, 243 ],
	[ 308, 244, 184, 188, 248 ],
	[ 309, 249, 189, 185, 245 ],
	[ 310, 250, 190, 186, 246 ],
	[ 311, 247, 187, 191, 251 ],
	[  84,  60, 120, 204, 252, 192 ],
	[  84, 192, 256, 208, 124,  64 ],
	[  84,  64,  16,   0,  12,  60 ],
	[  85,  61,  13,   1,  17,  65 ],
	[  85,  65, 125, 209, 257, 193 ],
	[  85, 193, 253, 205, 121,  61 ],
	[  86,  62,  14,   2,  18,  66 ],
	[  86,  66, 126, 210, 258, 194 ],
	[  86, 194, 254, 206, 122,  62 ],
	[  87,  63, 123, 207, 255, 195 ],
	[  87, 195, 259, 211, 127,  67 ],
	[  87,  67,  19,   3,  15,  63 ],
	[  88,  68, 128, 212, 260, 196 ],
	[  88, 196, 262, 214, 130,  70 ],
	[  88,  70,  22,   4,  20,  68 ],
	[  89,  69,  21,   5,  23,  71 ],
	[  89,  71, 131, 215, 263, 197 ],
	[  89, 197, 261, 213, 129,  69 ],
	[  90,  72,  24,   6,  26,  74 ],
	[  90,  74, 134, 218, 266, 198 ],
	[  90, 198, 264, 216, 132,  72 ],
	[  91,  73, 133, 217, 265, 199 ],
	[  91, 199, 267, 219, 135,  75 ],
	[  91,  75,  27,   7,  25,  73 ],
	[  92,  76, 136, 220, 268, 200 ],
	[  92, 200, 269, 221, 137,  77 ],
	[  92,  77,  29,   8,  28,  76 ],
	[  93,  78,  30,   9,  31,  79 ],
	[  93,  79, 139, 223, 271, 201 ],
	[  93, 201, 270, 222, 138,  78 ],
	[  94,  80,  32,  10,  33,  81 ],
	[  94,  81, 141, 225, 273, 202 ],
	[  94, 202, 272, 224, 140,  80 ],
	[  95,  82, 142, 226, 274, 203 ],
	[  95, 203, 275, 227, 143,  83 ],
	[  95,  83,  35,  11,  34,  82 ],
	[ 492, 468, 452, 344, 368, 476 ],
	[ 492, 476, 460, 352, 376, 484 ],
	[ 492, 484, 444, 336, 360, 468 ],
	[ 493, 469, 361, 337, 445, 485 ],
	[ 493, 485, 377, 353, 461, 477 ],
	[ 493, 477, 369, 345, 453, 469 ],
	[ 494, 470, 362, 338, 446, 486 ],
	[ 494, 486, 378, 354, 462, 478 ],
	[ 494, 478, 370, 346, 454, 470 ],
	[ 495, 471, 455, 347, 371, 479 ],
	[ 495, 479, 463, 355, 379, 487 ],
	[ 495, 487, 447, 339, 363, 471 ],
	[ 496, 472, 364, 340, 448, 488 ],
	[ 496, 488, 380, 356, 464, 480 ],
	[ 496, 480, 372, 348, 456, 472 ],
	[ 497, 473, 457, 349, 373, 481 ],
	[ 497, 481, 465, 357, 381, 489 ],
	[ 497, 489, 449, 341, 365, 473 ],
	[ 498, 474, 458, 350, 374, 482 ],
	[ 498, 482, 466, 358, 382, 490 ],
	[ 498, 490, 450, 342, 366, 474 ],
	[ 499, 475, 367, 343, 451, 491 ],
	[ 499, 491, 383, 359, 467, 483 ],
	[ 499, 483, 375, 351, 459, 475 ],
	[  12,  36,  96, 144, 120,  60 ],
	[  13,  61, 121, 145,  97,  37 ],
	[  14,  62, 122, 146,  98,  38 ],
	[  15,  39,  99, 147, 123,  63 ],
	[  16,  64, 124, 148, 100,  40 ],
	[  17,  41, 101, 149, 125,  65 ],
	[  18,  42, 102, 150, 126,  66 ],
	[  19,  67, 127, 151, 103,  43 ],
	[  20,  44, 104, 152, 128,  68 ],
	[  21,  69, 129, 153, 105,  45 ],
	[  22,  70, 130, 154, 106,  46 ],
	[  23,  47, 107, 155, 131,  71 ],
	[  24,  72, 132, 156, 108,  48 ],
	[  25,  49, 109, 157, 133,  73 ],
	[  26,  50, 110, 158, 134,  74 ],
	[  27,  75, 135, 159, 111,  51 ],
	[  28,  52, 112, 160, 136,  76 ],
	[  29,  77, 137, 161, 113,  53 ],
	[  30,  78, 138, 162, 114,  54 ],
	[  31,  55, 115, 163, 139,  79 ],
	[  32,  80, 140, 164, 116,  56 ],
	[  33,  57, 117, 165, 141,  81 ],
	[  34,  58, 118, 166, 142,  82 ],
	[  35,  83, 143, 167, 119,  59 ],
	[ 276, 312, 420, 452, 468, 360 ],
	[ 277, 361, 469, 453, 421, 313 ],
	[ 278, 362, 470, 454, 422, 314 ],
	[ 279, 315, 423, 455, 471, 363 ],
	[ 280, 364, 472, 456, 424, 316 ],
	[ 281, 317, 425, 457, 473, 365 ],
	[ 282, 318, 426, 458, 474, 366 ],
	[ 283, 367, 475, 459, 427, 319 ],
	[ 284, 320, 428, 460, 476, 368 ],
	[ 285, 369, 477, 461, 429, 321 ],
	[ 286, 370, 478, 462, 430, 322 ],
	[ 287, 323, 431, 463, 479, 371 ],
	[ 288, 372, 480, 464, 432, 324 ],
	[ 289, 325, 433, 465, 481, 373 ],
	[ 290, 326, 434, 466, 482, 374 ],
	[ 291, 375, 483, 467, 435, 327 ],
	[ 292, 328, 436, 444, 484, 376 ],
	[ 293, 377, 485, 445, 437, 329 ],
	[ 294, 378, 486, 446, 438, 330 ],
	[ 295, 331, 439, 447, 487, 379 ],
	[ 296, 380, 488, 448, 440, 332 ],
	[ 297, 333, 441, 449, 489, 381 ],
	[ 298, 334, 442, 450, 490, 382 ],
	[ 299, 383, 491, 451, 443, 335 ],
	[ 408, 394, 262, 196, 260, 392 ],
	[ 409, 393, 261, 197, 263, 395 ],
	[ 410, 396, 264, 198, 266, 398 ],
	[ 411, 399, 267, 199, 265, 397 ],
	[ 412, 401, 269, 200, 268, 400 ],
	[ 413, 402, 270, 201, 271, 403 ],
	[ 414, 404, 272, 202, 273, 405 ],
	[ 415, 407, 275, 203, 274, 406 ],
	[ 416, 388, 256, 192, 252, 384 ],
	[ 417, 385, 253, 193, 257, 389 ],
	[ 418, 386, 254, 194, 258, 390 ],
	[ 419, 391, 259, 195, 255, 387 ],
	[  12,   0,   2,  14,  38,  36 ],
	[  13,  37,  39,  15,   3,   1 ],
	[  16,  40,  42,  18,   2,   0 ],
	[  17,   1,   3,  19,  43,  41 ],
	[  20,   4,   5,  21,  45,  44 ],
	[  22,  46,  47,  23,   5,   4 ],
	[  24,  48,  49,  25,   7,   6 ],
	[  26,   6,   7,  27,  51,  50 ],
	[  28,   8,  10,  32,  56,  52 ],
	[  29,  53,  57,  33,  10,   8 ],
	[  30,  54,  58,  34,  11,   9 ],
	[  31,   9,  11,  35,  59,  55 ],
	[ 120, 144, 276, 360, 336, 204 ],
	[ 121, 205, 337, 361, 277, 145 ],
	[ 122, 206, 338, 362, 278, 146 ],
	[ 123, 147, 279, 363, 339, 207 ],
	[ 124, 208, 340, 364, 280, 148 ],
	[ 125, 149, 281, 365, 341, 209 ],
	[ 126, 150, 282, 366, 342, 210 ],
	[ 127, 211, 343, 367, 283, 151 ],
	[ 128, 152, 284, 368, 344, 212 ],
	[ 129, 213, 345, 369, 285, 153 ],
	[ 130, 214, 346, 370, 286, 154 ],
	[ 131, 155, 287, 371, 347, 215 ],
	[ 132, 216, 348, 372, 288, 156 ],
	[ 133, 157, 289, 373, 349, 217 ],
	[ 134, 158, 290, 374, 350, 218 ],
	[ 135, 219, 351, 375, 291, 159 ],
	[ 136, 160, 292, 376, 352, 220 ],
	[ 137, 221, 353, 377, 293, 161 ],
	[ 138, 222, 354, 378, 294, 162 ],
	[ 139, 163, 295, 379, 355, 223 ],
	[ 140, 224, 356, 380, 296, 164 ],
	[ 141, 165, 297, 381, 357, 225 ],
	[ 142, 166, 298, 382, 358, 226 ],
	[ 143, 227, 359, 383, 299, 167 ],
	[ 252, 204, 336, 444, 436, 384 ],
	[ 253, 385, 437, 445, 337, 205 ],
	[ 254, 386, 438, 446, 338, 206 ],
	[ 255, 207, 339, 447, 439, 387 ],
	[ 256, 388, 440, 448, 340, 208 ],
	[ 257, 209, 341, 449, 441, 389 ],
	[ 258, 210, 342, 450, 442, 390 ],
	[ 259, 391, 443, 451, 343, 211 ],
	[ 260, 212, 344, 452, 420, 392 ],
	[ 261, 393, 421, 453, 345, 213 ],
	[ 262, 394, 422, 454, 346, 214 ],
	[ 263, 215, 347, 455, 423, 395 ],
	[ 264, 396, 424, 456, 348, 216 ],
	[ 265, 217, 349, 457, 425, 397 ],
	[ 266, 218, 350, 458, 426, 398 ],
	[ 267, 399, 427, 459, 351, 219 ],
	[ 268, 220, 352, 460, 428, 400 ],
	[ 269, 401, 429, 461, 353, 221 ],
	[ 270, 402, 430, 462, 354, 222 ],
	[ 271, 223, 355, 463, 431, 403 ],
	[ 272, 404, 432, 464, 356, 224 ],
	[ 273, 225, 357, 465, 433, 405 ],
	[ 274, 226, 358, 466, 434, 406 ],
	[ 275, 407, 435, 467, 359, 227 ],
	[  36,  38,  98, 170, 168,  96 ],
	[  37,  97, 169, 171,  99,  39 ],
	[  40, 100, 172, 174, 102,  42 ],
	[  41,  43, 103, 175, 173, 101 ],
	[  44,  45, 105, 177, 176, 104 ],
	[  46, 106, 178, 179, 107,  47 ],
	[  48, 108, 180, 181, 109,  49 ],
	[  50,  51, 111, 183, 182, 110 ],
	[  52,  56, 116, 188, 184, 112 ],
	[  53, 113, 185, 189, 117,  57 ],
	[  54, 114, 186, 190, 118,  58 ],
	[  55,  59, 119, 191, 187, 115 ],
	[ 144,  96, 168, 228, 312, 276 ],
	[ 145, 277, 313, 229, 169,  97 ],
	[ 146, 278, 314, 230, 170,  98 ],
	[ 147,  99, 171, 231, 315, 279 ],
	[ 148, 280, 316, 232, 172, 100 ],
	[ 149, 101, 173, 233, 317, 281 ],
	[ 150, 102, 174, 234, 318, 282 ],
	[ 151, 283, 319, 235, 175, 103 ],
	[ 152, 104, 176, 236, 320, 284 ],
	[ 153, 285, 321, 237, 177, 105 ],
	[ 154, 286, 322, 238, 178, 106 ],
	[ 155, 107, 179, 239, 323, 287 ],
	[ 156, 288, 324, 240, 180, 108 ],
	[ 157, 109, 181, 241, 325, 289 ],
	[ 158, 110, 182, 242, 326, 290 ],
	[ 159, 291, 327, 243, 183, 111 ],
	[ 160, 112, 184, 244, 328, 292 ],
	[ 161, 293, 329, 245, 185, 113 ],
	[ 162, 294, 330, 246, 186, 114 ],
	[ 163, 115, 187, 247, 331, 295 ],
	[ 164, 296, 332, 248, 188, 116 ],
	[ 165, 117, 189, 249, 333, 297 ],
	[ 166, 118, 190, 250, 334, 298 ],
	[ 167, 299, 335, 251, 191, 119 ],
	[ 384, 436, 328, 244, 308, 416 ],
	[ 385, 417, 309, 245, 329, 437 ],
	[ 386, 418, 310, 246, 330, 438 ],
	[ 387, 439, 331, 247, 311, 419 ],
	[ 388, 416, 308, 248, 332, 440 ],
	[ 389, 441, 333, 249, 309, 417 ],
	[ 390, 442, 334, 250, 310, 418 ],
	[ 391, 419, 311, 251, 335, 443 ],
	[ 392, 420, 312, 228, 300, 408 ],
	[ 393, 409, 301, 229, 313, 421 ],
	[ 394, 408, 300, 230, 314, 422 ],
	[ 395, 423, 315, 231, 301, 409 ],
	[ 396, 410, 302, 232, 316, 424 ],
	[ 397, 425, 317, 233, 303, 411 ],
	[ 398, 426, 318, 234, 302, 410 ],
	[ 399, 411, 303, 235, 319, 427 ],
	[ 400, 428, 320, 236, 304, 412 ],
	[ 401, 412, 304, 237, 321, 429 ],
	[ 402, 413, 305, 238, 322, 430 ],
	[ 403, 431, 323, 239, 305, 413 ],
	[ 404, 414, 306, 240, 324, 432 ],
	[ 405, 433, 325, 241, 306, 414 ],
	[ 406, 434, 326, 242, 307, 415 ],
	[ 407, 415, 307, 243, 327, 435 ]
])

